package cl.inacap.adm.proyect.ui;

import java.util.Date;
import java.util.Locale;

import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;

import org.apache.log4j.Logger;



/**
 * Request Processor del Sistema<p>
 *
 * Registro de Versiones:<ul>
 * <li>29/05/2010 [aituarte - schema ltda.]: Versión Inicial</li>
 * </ul><p>
 * 
 * <b>Todos los derechos reservados - Hites</b><p>
 *
 */
public class AdmProyectRequestProcessor extends org.apache.struts.tiles.TilesRequestProcessor {

	/** looger */
	private static Logger logger = Logger.getLogger(AdmProyectRequestProcessor.class);
		
    public boolean processPreprocess( HttpServletRequest req, HttpServletResponse resp ) {
    	
//    	// atrapa opción seleccionada
//    	String opcion = WebUtils.getCleanData(req.getParameter( RebateConstants.OPCION_SELECCIONADA ));
//    	logger.debug("processPreprocess -> Opcion: " + opcion);
//    	if ( opcion != null ) {
//        	WebUtils.setTitle(req, opcion, opcion + ".help" );
//        	req.getSession(true).setAttribute( RebateConstants.OPCION_SELECCIONADA, opcion);
//    	}

    	String action = req.getServletPath();
    	logger.debug("processPreprocess -> Procesando Action: " + action);
   	
	    // set del LOCALE español (default)
	    Locale strutsLocale = (Locale)req.getSession(true).getAttribute(org.apache.struts.Globals.LOCALE_KEY);
	    if ( strutsLocale == null || !"es_CL".equalsIgnoreCase(strutsLocale.toString()) )
		    req.getSession(true).setAttribute(org.apache.struts.Globals.LOCALE_KEY, new Locale("es","cl"));
    	
    	// contextRoot
    	req.getSession(true).setAttribute("contextRoot", req.getContextPath());

    	// now
    	req.getSession(true).setAttribute("now", new Date());
    	// Chequea esté definido el contexto del usuario
    	try {
    		if (req.getUserPrincipal() != null)
    		{	
    			logger.debug("***********loggeo getUserPrincipal***********" + req.getUserPrincipal());
//	    		WebUtils.setContextoUsuario( req );
//	    		WebUtils.setMenuUsuario( req );
//	    		WebUtils.setGlosasSession(req);
    		}
		} catch (Exception e) {
	    	logger.error("processPreprocess -> Exception:\n",e);
		}
    	
    	return true;
	  }

}
